Integrating concurrency and object-orientation using boolean, access and path guards
نویسندگان
چکیده
Inheritance Anomaly is considered as a major problem in integrating object-orientation and concurrency. The anomaly forces redefinitions of inherited methods to maintain the integrity of concurrent objects. In this paper we discuss how the use of boolean, access and path guards attached to methods solve the problem of inheritance anomaly. Synchronizationusing boolean guards have known to be free of inheritance anomaly caused by partitioningof acceptable states. However, they cause anomalies from history sensitivity. We solve this using path guards. Path guards are similar to path expressions in the sense that both express the execution pattern of methods. However, while a path expression independently specifies the synchronization of a collection of methods, a path guard is attached to a method and it specifies the history of execution sequence(s) acceptable for executing the current method. Path expressions have been shown to cause inheritance anomaly, on the other hand, we will show that path guards form a solution to the problem.
منابع مشابه
TAO - a model for the integration of concurrency and synchronisation in object-oriented programming
The integration of concurrency into inheritance has been attempted in a number of languages. However, some of the compromises made have seriously degraded the usefulness of these languages. Hence none of these languages have been totally successful. A particular problem has been the “inheritance anomaly” caused by interactions between synchronisation mechanisms and inheritance. This thesis intr...
متن کاملReliability assessment of power distribution systems using disjoint path-set algorithm
Finding the reliability expression of different substation configurations can help design a distribution system with the best overall reliability. This paper presents a computerized a nd implemented algorithm, based on Disjoint Sum of Product (DSOP) algorithm. The algorithm was synthesized and applied for the first time to the determination of reliability expression of a substation to determine...
متن کاملObject-oriented Framework for Adaptation in a DFS
PersistentObject According to the framework, PersistentObject is a pure interface that specifies only the contract for persistent objects in the system. To help application developers, ADIOS also defines an AbstractPersistentObject, a partially implemented subclass realizing the PersistentObject interface. This class defines the kernel of most operations and defers the rest of the implementatio...
متن کاملAnnotations for Synchronization Constraints in Corba Idl
Most distributed applications require mechanisms for the synchronization of cooperating components. In a CORBA application this functionality is currently hidden in the methods of the server objects. This complicates design, validation and maintenance of distributed applications. To improve this situation we propose guards and concurrency annotations for the CORBA IDL. Our approach allows the e...
متن کاملSequential Object Monitors
Programming with Java monitors is recognized to be difficult, and potentially inefficient due to many useless context switches induced by the notifyAll primitive. This paper presents SOM, Sequential Object Monitors, as an alternative to programming with Java monitors. Reifying monitor method calls as requests, and providing full access to the pending request queue, gives rise to fully sequentia...
متن کامل